package com.jxpanda.commons.encrypt;

import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * 各种算法的枚举，暂时只枚举实现的算法
 * 以后用到了再扩充
 * @author Panda
 */
@Getter
@AllArgsConstructor
public enum EncryptAlgorithm {

    /**
     * AES_CBC_PKCS7 算法
     * */
    AES_CBC_PKCS7("AES/CBC/PKCS7Padding", "AES-128-CBC，PKCS7填充加密算法"),
    AES("AES", "AES加密算法"),
    RSA("RSA", "RSA加密算法"),
    MD5("MD5", "MD5摘要算法"),
    SHA256("SHA-256", "SHA256摘要算法"),
    SHA256_WITH_RSA("SHA256withRSA", "SHA256withRSA，做RSA签名验证使用的算法枚举值"),
    ECDSA("EC", "ECDSA算法，椭圆曲线数字签名算法"),
    SHA256_WITH_ECDSA("SHA256withECDSA", "SHA256withECDSA，使用ECDSA做签名验证使用的算法枚举值");

    private final String value;
    private final String description;

}
